<HTML>
<!--
  -- Copyright (c) 1996-1999
  -- Silicon Graphics Computer Systems, Inc.
  --
  -- Permission to use, copy, modify, distribute and sell this software
  -- and its documentation for any purpose is hereby granted without fee,
  -- provided that the above copyright notice appears in all copies and
  -- that both that copyright notice and this permission notice appear
  -- in supporting documentation.  Silicon Graphics makes no
  -- representations about the suitability of this software for any
  -- purpose.  It is provided "as is" without express or implied warranty.
  --
  -- Copyright (c) 1994
  -- Hewlett-Packard Company
  --
  -- Permission to use, copy, modify, distribute and sell this software
  -- and its documentation for any purpose is hereby granted without fee,
  -- provided that the above copyright notice appears in all copies and
  -- that both that copyright notice and this permission notice appear
  -- in supporting documentation.  Hewlett-Packard Company makes no
  -- representations about the suitability of this software for any
  -- purpose.  It is provided "as is" without express or implied warranty.
  --
  -->
<Head>
<Title>unary_function&lt;Arg, Result&gt;</Title>
<!-- Generated by htmldoc -->
</HEAD>
<BODY BGCOLOR="#ffffff" LINK="#0000ee" TEXT="#000000" VLINK="#551a8b" 
	ALINK="#ff0000"> 
<IMG SRC="CorpID.gif" 
     ALT="SGI" HEIGHT="43" WIDTH="151"> 
<!--end header-->
<BR Clear>
<H1>unary_function&lt;Arg, Result&gt;</H1>

<Table CellPadding=0 CellSpacing=0 width=100%>
<TR>
<TD Align=left><Img src = "functors.gif" Alt=""   WIDTH = "194"  HEIGHT = "38" ></TD>
<TD Align=right><Img src = "type.gif" Alt=""   WIDTH = "194"  HEIGHT = "39" ></TD>
</TR>
<TR>
<TD Align=left VAlign=top><b>Category</b>: functors</TD>
<TD Align=right VAlign=top><b>Component type</b>: type</TD>
</TR>
</Table>

<h3>Description</h3>
<tt>Unary_function</tt> is an empty base class: it contains no member
functions or member variables, but only type information.  The
only reason it exists is to make it more convenient to define
types that are models of the concept <A href="AdaptableUnaryFunction.html">Adaptable Unary Function</A>.
Specifically, any model of <A href="AdaptableUnaryFunction.html">Adaptable Unary Function</A> must define
nested <tt>typedef</tt>s.  Those <tt>typedef</tt>s are provided by the base
class <tt>unary_function</tt>.
<h3>Example</h3>
<pre>
struct sine : public unary_function&lt;double, double&gt; {
    double operator()(double x) { return sin(x); }
};
</pre>
<h3>Definition</h3>
Defined in the standard header <A href="functional">functional</A>, and in the nonstandard
backward-compatibility header <A href="function.h">function.h</A>.
<h3>Template parameters</h3>
<Table border>
<TR>
<TH>
Parameter
</TH>
<TH>
Description
</TH>
<TH>
Default
</TH>
</TR>
<TR>
<TD VAlign=top>
<tt>Arg</tt>
</TD>
<TD VAlign=top>
The function object's argument type
</TD>
<TD VAlign=top>
&nbsp;
</TD>
</TR>
<TR>
<TD VAlign=top>
<tt>Result</tt>
</TD>
<TD VAlign=top>
The function object's result type
</TD>
<TD VAlign=top>
&nbsp;
</TD>
</tr>
</table>
<h3>Model of</h3>
<A href="Assignable.html">Assignable</A>, <A href="DefaultConstructible.html">Default Constructible</A>
<h3>Type requirements</h3>
<h3>Public base classes</h3>
None.
<h3>Members</h3>
<Table border>
<TR>
<TH>
Member
</TH>
<TH>
Where defined
</TH>
<TH>
Description
</TH>
</TR>
<TR>
<TD VAlign=top>
<tt>argument_type</tt>
</TD>
<TD VAlign=top>
<tt>unary_function</tt>
</TD>
<TD VAlign=top>
See below.
</TD>
</TR>
<TR>
<TD VAlign=top>
<tt>result_type</tt>
</TD>
<TD VAlign=top>
<tt>unary_function</tt>
</TD>
<TD VAlign=top>
See below.
</TD>
</tr>
</table>
<h3>New members</h3>
These members are not defined in the 
<A href="Assignable.html">Assignable</A> and <A href="DefaultConstructible.html">Default Constructible</A>
requirements, but are specific to 
<tt>unary_function</tt>.
<Table border>
<TR>
<TH>
Member
</TH>
<TH>
Description
</TH>
</TR>
<TR>
<TD VAlign=top>
<tt>argument_type</tt>
</TD>
<TD VAlign=top>
The function object's argument type.  This is a <tt>typedef</tt> for the
   template parameter <tt>Arg</tt>.
</TD>
</TR>
<TR>
<TD VAlign=top>
<tt>result_type</tt>
</TD>
<TD VAlign=top>
The function object's result type.  This is a <tt>typedef</tt> for the
   template parameter <tt>Result</tt>.
</TD>
</tr>
</table>
<h3>Notes</h3>
<h3>See also</h3>
The <A href="functors.html">Function Object</A> overview, <A href="AdaptableUnaryFunction.html">Adaptable Unary Function</A>,
<tt><A href="binary_function.html">binary_function</A></tt>

<!--start footer--> 
<HR SIZE="6">
<A href="http://www.sgi.com/"><IMG SRC="surf.gif" HEIGHT="54" WIDTH="54" 
        ALT="[Silicon Surf]"></A>
<A HREF="index.html"><IMG SRC="stl_home.gif" 
        HEIGHT="54" WIDTH="54" ALT="[STL Home]"></A>
<BR>
<FONT SIZE="-2">
<A href="http://www.sgi.com/Misc/sgi_info.html" TARGET="_top">Copyright &copy; 
1999 Silicon Graphics, Inc.</A> All Rights Reserved.</FONT>
<FONT SIZE="-3"><a href="http://www.sgi.com/Misc/external.list.html" TARGET="_top">TrademarkInformation</A>
</FONT>
<P>
</BODY>
</HTML> 
